//
//  MTHomeTableViewController.swift
//  MTWeiBo
//
//  Created by user on 2017/7/22.
//  Copyright © 2017年 itcast. All rights reserved.
//

import UIKit
import YYModel
class MTHomeTableViewController: MTBaseTableViewController {

    //引用viwemodel
   fileprivate lazy var homeViewModel: MTHomeViewModel = MTHomeViewModel()
       
    override func viewDidLoad() {
        super.viewDidLoad()
        
        if !isLogin {
            //  没有登录修改访客视图信息
            visitor?.updateVisitorInfo(message: nil, imageName: nil)
        }else{
            loadData()
            
            setupTableView()
        }
    }
    
    //设置tableView相关操作
    private func setupTableView() {
        //注册cell
        tableView.register(MTTHomeableViewCell.self, forCellReuseIdentifier: HomeCellIdentifier)
        //设置行高
        //tableView.rowHeight = 200
        //预估行高
        tableView.estimatedRowHeight = 200
        //取出分割线
        tableView.separatorStyle = .none
    }
    
    //加载微博数据
    func loadData() {
        homeViewModel.loadData { (success) in
            if success{
                self.tableView.reloadData()
            }
        }
    }
    
//    //加载微博数据
//    func loadData() {
//        //令牌
//        let token = MTUserAccountViewModel.shardViewModel.accessToken!
//        HMNetworkTools.sharedTools.requestStatuses(access_token: token) { (respone, error) in
//            if error != nil {
//                print("error\(error!)")
//                return
//            }
//            //执行到此说明成功
//            let dict = respone as! [String: Any]
//            //获取微博字典数组
//            let statusesDictArr = dict["statuses"] as! [[String: Any]]
//            //  使用YYModel完成字典转模型
//            let statuseModel = NSArray.yy_modelArray(with: MTStatuses.self, json: statusesDictArr) as! [MTStatuses]
//            self.statusList = statuseModel
//            //重新加载数据
//            self.tableView.reloadData()
//        }
//    }
//    
//    
}

//数据源代理方法
extension MTHomeTableViewController {
    override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
        return homeViewModel.statusList.count
    }
    
    override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
        let cell = tableView.dequeueReusableCell(withIdentifier: HomeCellIdentifier, for: indexPath) as! MTTHomeableViewCell
        //获取模型
        let status = homeViewModel.statusList[indexPath.row]
        //绑定数据
        cell.statusViewModel = status
        //不显示选中样式
        cell.selectionStyle = .none
        return cell

    }
}
